// pages/GoodsDetail/GoodsDetail.js
const app = getApp()
import {get,post} from '../../utils/request'
import Toast from '../../miniprogram_npm/@vant/weapp/toast/toast';
Page({

  /**
   * 页面的初始数据
   */
  data: {
    goodsInfo: null,
    issue: [],
    moreGoods: [],
    show: false,
    number: 1, //商品数量,
    skuInfos: [], //规格信息
    isLike: 'like-o', //收藏状态
  },
  // 打开商品详情
  openDetail({currentTarget:{dataset:{item}}}) { //打开商品详情页面
    app.globalData.goodsId = item.id
    wx.navigateTo({
      url: '../GoodsDetail/GoodsDetail',
    })
  },
  // 打开购物车页面
  openCart() {
    wx.switchTab({
      url: '/pages/Cart/Cart',
    })
  },
  // 打开弹出层
  operation() {
    this.setData({
      show: true
    })
  },

  // 关闭弹出层
  onClose() {
    this.setData({
      show: false
    })
  },
  //选择数量
  changeNumber(e) {
    this.setData({
      number: e.detail
    })
  },
  // 加入购物车操作
  atOnceAddCart() {
    const info = {
      goodsId: this.data.goodsInfo.id,
      number: this.data.number,
      productId: this.data.skuInfos[0].id
    }
    post({
      url: '/cart/add',
      data:info
    }).then(res => {
      if(res.data.errno === 0) {
        Toast.loading({
          
          forbidClick: true,
          duration: 800
        });

        setTimeout(() => {
          Toast.success('加入成功!');
          this.setData({
            show: false
          })
        },1300)
      }
    })
  },
  //立即购买操作
  atOnceBuy() {
    const info = {
      goodsId: this.data.goodsInfo.id,
      number: this.data.number,
      productId: this.data.skuInfos[0].id
    }
    post({
      url: '/cart/fastadd',
      data: info
    }).then(res => {
      app.globalData.cartId = res.data.data
      app.globalData.storageId = this.data.goodsInfo.id
      app.globalData.number = this.data.number
      
      wx.navigateTo({
        url: '../OrderCreate/OrderCreate',
      })
    })
  },
  //收藏或取消收藏
  star() {
    // console.log(this.data.isLike);
    const likeShow = this.data.isLike //获取当前收藏状态
    const userInfo = wx.getStorageSync('userInfo') //获取登录用户信息
    if(userInfo) { //如果有用户信息
      post({ //发送请求
      url:'/collect/addordelete',
      data: {
        type: 0,
        valueId: this.data.goodsInfo.id
      }
    }).then(res => { 
      if(res.data.errno === 0) {
         //请求成功后
      if(likeShow === 'like-o') {
        this.setData({
          isLike: 'like'
        })
        Toast.success('收藏成功!');
      }else {
        this.setData({
          isLike: 'like-o'
        })
        Toast.success('取消成功!');
      }
      }
     
    })
    }else {
      Toast.fail('请登录后再进行操作');
    }
    
    
  },
  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {

  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {
    const id = app.globalData.goodsId
    get({
      url: '/goods/detail',
      data: {
        id
      }
    }).then(({data:{data}}) => {
      console.log(data);
      if(data.userHasCollect) {
        this.setData({
          isLike: 'like'
        })
      }else {
        this.setData({
          isLike: 'like-o'
        })
      }
      this.setData({
        goodsInfo: data.info,
        issue: data.issue,
        moreGoods: data.relatedGoods,
        skuInfos: data.productList
      })
    })
  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {

  }
})